package com.wicket.okrpbff.biz.service;


import com.wicket.okrpbff.biz.service.dto.req.*;
import com.wicket.okrpbff.biz.service.dto.res.*;
import com.wicket.okrapp.integration.FwAppCycleConfClient;
import com.wicket.okrapp.integration.dto.AddCycleTimeRuleRespDto;
import com.wicket.okrapp.integration.dto.AddCycleTimeRuleReqDto;
import com.wicket.okrpbff.common.exception.Assert;
import com.wicket.okrapp.integration.dto.UpdateCycleTimeRuleRespDto;
import com.wicket.okrapp.integration.dto.UpdateCycleTimeRuleReqDto;
import com.wicket.okrapp.integration.dto.QueryCycleTimeRuleListRespDto;
import com.wicket.okrapp.integration.dto.QueryCycleTimeRuleListReqDto;
import com.wicket.okrframework.integration.FwBaseInductionRecordClient;
import com.wicket.okrframework.integration.dto.BatchQueryInductionRecordListComRespDto;
import com.wicket.okrframework.integration.dto.BatchQueryInductionRecordListComReqDto;
import java.util.stream.Collectors;
import cn.hutool.core.collection.CollectionUtil;
import com.wicket.okrapp.integration.dto.QueryCycleTimeRuleDetailRespDto;
import com.wicket.okrapp.integration.dto.QueryCycleTimeRuleDetailReqDto;
import com.wicket.okrframework.integration.dto.QueryInductionRecordInfoDetailComRespDto;
import com.wicket.okrframework.integration.dto.QueryInductionRecordInfoDetailComReqDto;
import com.wicket.okrapp.integration.dto.AddCycleConfRespDto;
import com.wicket.okrapp.integration.dto.AddCycleConfReqDto;
import com.wicket.okrapp.integration.dto.UpdateCycleConfRespDto;
import com.wicket.okrapp.integration.dto.UpdateCycleConfReqDto;
import com.wicket.okrapp.integration.dto.QueryCycleConfListRespDto;
import com.wicket.okrapp.integration.dto.QueryCycleConfListReqDto;
import com.wicket.okrapp.integration.dto.QueryCycleConfDetailRespDto;
import com.wicket.okrapp.integration.dto.QueryCycleConfDetailReqDto;
import com.wicket.okrpbff.biz.service.dto.common.BffCycleTimeRuleDto;
import cn.hutool.core.bean.BeanUtil;

/**
 * @author ：
 * @date ：
 *
 *
 * @version 1.0
 */
public interface CycleConfService {
    /**
   * B3-4新增时段规则
   */
    BffAddCycleTimeRuleRespDto addCycleTimeRule(BffAddCycleTimeRuleReqDto reqDto);

    /**
   * B3-4查询时段规则列表(边界)
   */
    BffQueryCycleTimeRuleListBorderRespDto queryCycleTimeRuleListBorder(BffQueryCycleTimeRuleListBorderReqDto reqDto);

    /**
   * B3-2查周期配置详情
   */
    BffQueryCycleConfDetailRespDto queryCycleConfDetail(BffQueryCycleConfDetailReqDto reqDto);

    /**
   * B3-2查周期配置列表（平台）
   */
    BffQueryCycleConfListRespDto queryCycleConfList(BffQueryCycleConfListReqDto reqDto);

    /**
   * B3-2修改周期配置
   */
    BffUpdateCycleConfRespDto updateCycleConf(BffUpdateCycleConfReqDto reqDto);

    /**
   * B3-2新增周期配置
   */
    BffAddCycleConfRespDto addCycleConf(BffAddCycleConfReqDto reqDto);

    /**
   * B3-4查时段规则详情
   */
    BffQueryCycleTimeRuleDetailRespDto queryCycleTimeRuleDetail(BffQueryCycleTimeRuleDetailReqDto reqDto);

    /**
   * B3-4查时段规则列表（平台）
   */
    BffQueryCycleTimeRuleListRespDto queryCycleTimeRuleList(BffQueryCycleTimeRuleListReqDto reqDto);

    /**
   * B3-4修改时段规则
   */
    BffUpdateCycleTimeRuleRespDto updateCycleTimeRule(BffUpdateCycleTimeRuleReqDto reqDto);
    //
}

